home *** CD-ROM | disk | FTP | other *** search
/ Freelog 100 / FreelogNo100-NovembreDecembre2010.iso / ViePratique / Calendar Magic / setup.exe / {app} / qpi readme.txt < prev    next >
Text File  |  2008-01-19  |  25KB  |  578 lines

  1. QuickPi v4.5 Documentation
  2. Copyright (c) 2000-2008 S. Pagliarulo
  3.  
  4. HOW TO USE THIS DOCUMENT
  5.  
  6. To properly view this document in Notepad, maximize the Notepad window and 
  7. make sure a fixed-width font such as Courier is selected.  To print this 
  8. document, open it in Notepad or any other word processor and select Print from 
  9. the File menu.
  10.  
  11. INSTALLATION
  12.  
  13. Installation of QuickPi is easy.  Simply unzip the QPI45.ZIP file in the 
  14. directory of your choosing.  No changes are made to the Windows registry or 
  15. any other part of the system.  QuickPi is intended for use on Windows XP or 
  16. Windows Vista with a Pentium 4 or newer processor.  The 64-bit (x64) version 
  17. of QuickPi requires Windows x64 edition and an AMD processor with AMD64 
  18. instruction set or an Intel processor with EM64T technology (Intel 64).
  19.  
  20. DISTRIBUTION NOTES
  21.  
  22. The files that comprise the QPI45.ZIP file including the QPI v4.5 executable 
  23. are freely available for distribution.  If you plan to distribute QuickPi 
  24. online, you must distribute the entire file set as originally received and not 
  25. the individual files.
  26.  
  27.  
  28. -----------------
  29. QUICKPI OVERVIEW
  30.  
  31. QuickPi is designed to quickly compute Pi to a very high precision.  The 
  32. program is one of the fastest available on the Windows platform.  In addition 
  33. to its speed, QuickPi offers 6 different methods for computing Pi and can also 
  34. compute other constants such as e and the square root of 2 with equal 
  35. precision and speed.
  36.  
  37. USAGE INFORMATION
  38.  
  39. QuickPi is a command line program and as such you will need to start a Command 
  40. Prompt window to use it.  Refer to your Windows help guide for information on 
  41. how to start a Command Prompt window.
  42.  
  43. Once a Command Prompt window has been started, be sure the QuickPi application 
  44. QPI.EXE (or QPI64.EXE) is located in your system path.  If it's not, then 
  45. change the current working directory to that chosen when the program was first 
  46. installed.  Again, refer to your Windows help guide for information on PATHs 
  47. and the CHDIR command.
  48.  
  49. Entering QPI on the command line without any parameters will produce the 
  50. following information:
  51.  
  52.  
  53. QPI-QuickPi v4.5, (c) 2000-2008 S. Pagliarulo
  54. Freely distributable, email: s_pagliarulo@hotmail.com
  55.  
  56. usage: qpi digits[k|m|g] [destfile] [options|-h]
  57.  
  58.  
  59. Information in square brackets [] is optional.  Items separated by a vertical 
  60. bar | indicate an either-or choice.  The k, m and g suffix following "digits" 
  61. allows you to specify kilo (1,024), mega (1,048,576) or giga (1,073,741,824) 
  62. digits respectively.  Other suffixes include th, mi, and bi for a thousand 
  63. (1,000), million (1,000,000) or billion (1,000,000,000) digits respectively.  
  64. For example, to specify 1,000,000 digits of pi, enter:
  65.  
  66.   qpi 1mi
  67.  
  68. The output will be sent to the console screen.  To save the output to a text 
  69. file, simply specify a destination file name following the digits 
  70. specification:
  71.  
  72.   qpi 1mi pi.txt
  73.  
  74. This will save the output to the file "pi.txt" as well as providing progress 
  75. information to the console screen.  Note, the output of QuickPi 4.5 can also 
  76. be "redirected" with the > operator.  In this case however, no progress 
  77. information will be provided to the console screen.
  78.  
  79. Entering QPI on the command line with the -h option will produce the following 
  80. help information: 
  81.  
  82.                                -OPTIONS-
  83.  
  84.            -PI COMPUTATION-                    -OTHER CONSTANTS-
  85.  -agm[1|2|3]  AGM methods (1,2,3)       -e, -exp    natural log base, e
  86.  -borwein     Borweins' quartic         -2, -sqrt2  Pythagoras' constant
  87.  -chudnovsky  Chudnovskys' method       -phi        golden mean
  88.  -ramanujan   Ramanujan's method        -zeta3      Apery's constant
  89.  -machin      Machin's arctan formula   -gamma      Euler's constant
  90.  -stormer     Stormer arctan formula    -catalan    Catalan's constant
  91.                                         -ln(n)      natural log of (n)
  92.                                         -sqrt(n)    square root of (n)
  93.                                         -cbrt(n)    cube root of (n)
  94.  
  95.                             -OUTPUT FORMAT-
  96.  -fancy:dpc,dpr,   dpc - digits per column [default=10]
  97.         dpb,bs,dc, dpr - digits per row    [default=50]
  98.         fl         dpb - digits per block  [default=500]
  99.                    bs  - block spacing     [default=1]
  100.                    dc  - digit counting (none,row,block,line) [default=row]
  101.                    fl  - flags (noindent,indent) [default=noindent]
  102.  
  103.                              -COMPUTATION-
  104.  -formula<n>     use alternate formula (1-n) for computation
  105.  -inverse        compute multiplicative inverse
  106.  
  107.                           -MEMORY MANAGEMENT-
  108.  -memory:<size>  set upper memory limit (affects performance)
  109.  -swap:<path>    specify the location of swap files
  110.  -noswap         disable swap file creation
  111.  
  112.                             -MULTITHREADING-
  113.  -threads        collect and output thread usage information
  114.  -threads:<n>    set maximum number of threads (affects performance)
  115.  -nomt           disable multithreading
  116.  
  117.                             -MISCELLANEOUS-
  118.  -train          train program for optimal performance
  119.  -binary         compress output and create binary file
  120.  -stats          output computation statistics only (suppress digit data)
  121.  -checksum       include checksum of computation result
  122.  -save           save options as default values
  123.  -license        display software license information
  124.  -pause          pause when finished
  125.  
  126.  
  127. Most options can be abbreviated to their first letter.  Where duplicates 
  128. exist, using two letters will generally differentiate the options.
  129.  
  130. OPTION DESCRIPTIONS
  131.  
  132. -agm[1|2|3]
  133. This option causes QuickPi to compute Pi using one of the AGM (Arithmetic-
  134. Geometric-Mean) formulas first discovered by Gauss and Legendre and later 
  135. independently by Brent and Salamin (1).  QuickPi actually uses optimized 
  136. algorithm variants of these formulas.
  137.  
  138. Specifying -agm or -agm1 causes QuickPi to use a formula developed by Arnold 
  139. Schonhage (2).  This formula is currently QuickPi's fastest AGM method.  
  140. Specifying -agm2 causes QuickPi to use a formula by Takuya Ooura (3).  This is 
  141. currently QuickPi's second-fastest AGM method.  Specifying -agm3 causes 
  142. QuickPi to use the Brent-Salamin formula.
  143.  
  144. The AGM formulas are iterations that are quadratic in nature (the number of 
  145. digits doubling with each iteration).  To compute one million digits of Pi, 
  146. the AGM typically uses 19 iterations.
  147.  
  148. -borwein
  149. This option causes QuickPi to compute Pi using a quartic AGM iteration by 
  150. Jonathan and Peter Borwein.  A quartic iteration quadruples the number of 
  151. digits at each iteration (at the cost of more operations per iteration).  To 
  152. compute two million digits of Pi, the Borwein quartic formula only requires 10 
  153. iterations.
  154.  
  155. -chudnovsky
  156. This is the default option for QuickPi when no other options are specified.  
  157. This option causes QuickPi to compute Pi using a Ramanujan-like series formula 
  158. discovered by David and Gregory Chudnovsky.  This formula provides 
  159. approximately 14 correct digits per term.  This is currently QuickPi's fastest 
  160. method for computing Pi.
  161.  
  162. -ramanujan
  163. This option causes QuickPi to compute Pi using one of the many series formulas 
  164. discovered by Srinivasa Ramanujan.  The particular formula used by QuickPi 
  165. provides approximately 8 digits per term and runs predictably slower than the 
  166. series by the Chudnovsky brothers.
  167.  
  168. -machin
  169. This option causes QuickPi to compute Pi using the arctangent formula 
  170. discovered by John Machin in 1706.  Machin's refinement on the 
  171. Gregory/Leibniz series yielded a formula with a significantly greater rate of 
  172. convergence: pi/4 = 4 arctan(1/5) - arctan(1/239)
  173.  
  174. -stormer
  175. This option causes QuickPi to compute Pi using an arctangent formula 
  176. discovered by F.C.W. Stormer in 1896.  This is one of the same formulas used 
  177. by Yasumasa Kanada of the University of Tokyo (4) and his team to compute Pi 
  178. to a record 1 trillion digits: pi/4 = 44 arctan(1/57) + 7 arctan(1/239) - 12 
  179. arctan(1/682) + 24 arctan(1/12943)
  180.  
  181. -e, -exp
  182. This option causes QuickPi to compute the natural logarithmic base, e.  The 
  183. constant e = exp(1) is defined as: 1 + 1/1! + 1/2! + 1/3! + ...
  184.  
  185. -2, -sqrt2
  186. This option causes QuickPi to compute Pythagoras' constant, the square root of 
  187. 2.  QuickPi uses Newton's iteration for computing square roots.  With an 
  188. initial estimate (x), Newton's iteration for the square root of 2 converges 
  189. quadratically using the sequence: x = (x/2 + 1/x).
  190.  
  191. -phi
  192. This option causes QuickPi to compute the Golden Mean.  Also known as the 
  193. Golden Ratio or the Golden Section, it is usually represented by the Greek 
  194. letter Phi.  QuickPi uses Newton's iteration for computing Phi (see -sqrt2).  
  195. The formula for Phi is: (1 + sqrt(5)) / 2.
  196.  
  197. -zeta3
  198. This option causes QuickPi to compute Apery's constant, Zeta(3).  Zeta(3) is 
  199. defined by the formula: 1 + 1/2^3 + 1/3^3 + 1/4^3 + ...  QuickPi uses a faster 
  200. series discovered by Amdeberhan and Zeilberger for this computation.
  201.  
  202. -gamma
  203. This option causes QuickPi to compute Euler's constant (or Mascheroni's 
  204. constant) and is defined as the limit of: 1 + 1/2 + 1/3 + 1/4 + 1/5 + ... + 
  205. 1/n - ln(n).  The constant is usually denoted by the lower-case Greek letter 
  206. Gamma.  QuickPi uses a faster method due to Brent and McMillan for this 
  207. computation.
  208.  
  209. -catalan
  210. This option causes QuickPi to compute Catalan's constant.  Catalan is defined 
  211. by the following series: 1/1^2 - 1/3^2 + 1/5^2 - 1/7^2 + 1/9^2 - ...  and is 
  212. usually denoted as K, G or sometimes C.  QuickPi uses a faster series by 
  213. Alexandru Lupas for this computation.
  214.  
  215. -ln(n)
  216. This option causes QuickPi to compute the natural logarithm of an integer 
  217. value (n).  Natural logs are the solution to the equation: e^x = n.
  218.  
  219. -sqrt(n)
  220. This option causes QuickPi to compute the square root of an integer value (n).
  221.  
  222. -cbrt(n)
  223. This option causes QuickPi to compute the cube root of an integer value (n).
  224.  
  225. -fancy:
  226. This option allows the formatted output of QuickPi to be customized.  The 
  227. default format is 10 digits per column, 50 digits per row and 500 digits per 
  228. block.  Blocks are separated by 1 blank line, digits are counted after each 
  229. row and lines are not indented.  Specifying each (in order) as follows can 
  230. change these parameters:
  231.  
  232.   -fancy:dpc,dpr,dpb,bs,dc,fl
  233.  
  234. For example, the following parameters cause QuickPi to output 5 digits per 
  235. column, 50 digits per row and 1000 digits per block with lines indented.  Note 
  236. that any missing parameters remain unchanged.
  237.  
  238.   -fancy:5,50,1000,,,indent
  239.  
  240. There are two other valid parameters for this option.  They are -fancy:default 
  241. and -fancy:raw.  The first causes the QuickPi to revert to its original 
  242. default parameters and the second causes QuickPi to produce unformatted 
  243. output.  Unformatted output is simply a stream of digits without spaces or 
  244. line termination.
  245.  
  246. -formula<n>
  247. This option enables QuickPi to use an alternate formula for a computation.  
  248. Specifying -formula1 causes QuickPi to use its primary (default) formula and 
  249. specifying -formula2 thru -formula9 causes QuickPi to use an alternate 
  250. (generally slower) formula.  Alternate formulas are useful to verify the 
  251. correctness of a computation.  The following constants have alternate 
  252. formulas:
  253.  
  254.  -exp             -formula2
  255.  -phi             -formula2
  256.  -catalan         -formula2
  257.  -zeta3           -formula2
  258.  -sqrt(n)         -formula2
  259.  -cbrt(n)         -formula2
  260.  -ln(n)           -formula2
  261.  
  262. -inverse
  263. This option causes QuickPi to compute the multiplicative inverse or reciprocal 
  264. result.  This option is not available for all constants.
  265.  
  266. -memory:<size>
  267. This option sets the upper limit of memory use for QuickPi.  The size 
  268. parameter may be followed by an m to indicate megabytes (1048576 bytes).  The 
  269. smallest value that can be specified is 32 megabytes, smaller values are 
  270. ignored.  When the upper limit of memory is reached, QuickPi will reduce its 
  271. memory consumption and may swap memory to disk unless the creation of swap 
  272. files is disabled (see -noswap option).  Note, very large computations may 
  273. still cause QuickPi to go over the specified memory limit. 
  274.  
  275. -swap:<path>
  276. Normally, QuickPi creates swap files in the current directory.  This option 
  277. causes QuickPi to use the specified path as the location for creating swap 
  278. files.  A drive letter may be included as part of the path.  The path must 
  279. already exist.
  280.  
  281. -noswap
  282. This option prevents QuickPi from creating swap files when running low on 
  283. memory.
  284.  
  285. -threads
  286. This option (without a value) causes QuickPi to collect and output information 
  287. related to thread and processor usage.  By default, QuickPi allocates one 
  288. thread for each processor core or SMT execution context.
  289.  
  290. -threads:<n>
  291. This option (with a value) sets the maximum number of threads that QuickPi can 
  292. use.  Any value in the range from 1 to 32 is accepted.  The actual number of 
  293. threads used depends on the size of a computation, the amount of available 
  294. memory and other internal factors.  Increasing the number of threads does not 
  295. always translate to improved performance.
  296.  
  297. -nomt
  298. This option completely disables multithreading causing QuickPi to operate as a 
  299. single-threaded application.
  300.  
  301. -train
  302. This option causes QuickPi to train or configure itself for a specific 
  303. computer environment.  Once trained, QuickPi will usually run faster than its 
  304. default configuration.  Training will normally take several minutes to 
  305. complete.  Training information is saved to a QPI.INI file located in the same 
  306. directory as QPI.EXE.  QuickPi will then read the training information the 
  307. next time it's run.  It is recommended that all Windows applications be closed 
  308. and any background tasks (including screensavers) be disabled prior to 
  309. initiating training.
  310.  
  311. -binary
  312. This option causes QuickPi to write its output as a compressed binary file. 
  313. Compressed files are generally 1/2 to 1/3 the size of QuickPi's normal output.  
  314. A secondary reader program QRD (included) is required to view compressed 
  315. binary files.  The QuickPi Reader program is described below.
  316.  
  317. -stats
  318. This option causes QuickPi to output computation statistics only and suppress 
  319. the output of digit data.  This can be useful when only the statistics of a 
  320. computation are desired for comparison purposes.
  321.  
  322. -checksum
  323. This option causes QuickPi to calculate and display a checksum for a 
  324. computation result.  A checksum can be useful to validate a result without 
  325. having to perform a digit by digit comparison.
  326.  
  327. -save
  328. This option causes QuickPi to save the settings of the above specified options 
  329. to a QPI.INI file located in the same directory as QPI.EXE.  The next time 
  330. QuickPi is started, it will automatically read the QPI.INI file and default to 
  331. the saved options.  This is particularly useful for the -fancy option and its 
  332. various parameters.
  333.  
  334. -license
  335. This option displays the QuickPi license information.
  336.  
  337. -pause
  338. This option causes QuickPi to pause and wait for a key to be pressed when its 
  339. operation is complete.  QuickPi will automatically pause if started from the 
  340. Windows Desktop. 
  341.  
  342.  
  343. ----------------
  344. READER OVERVIEW
  345.  
  346. The QuickPi Reader is designed to decompress a binary file written by QuickPi 
  347. and output it in a variety of customizable formats.  Using the Reader allows 
  348. you to quickly output all or part of a QuickPi result without having to re-run 
  349. a (perhaps lengthy) QuickPi computation.  In addition, compressed binary files 
  350. are up to 1/2 to 1/3 the size of QuickPi's normal output, saving a significant 
  351. amount of disk space if result files are archived.
  352.  
  353. USAGE INFORMATION
  354.  
  355. The QuickPi Reader is a command line program and as such you will need to 
  356. start a Command Prompt window to use it.  Refer to your Windows help guide for 
  357. information on how to start a Command Prompt window.
  358.  
  359. Once a Command Prompt window has been started, be sure the Reader program 
  360. QRD.EXE (or QRD64.EXE) is located in your system path.  If it's not, then 
  361. change the current working directory to that chosen when the program was first 
  362. installed.  Again, refer to your Windows help guide for information on PATHs 
  363. and the CHDIR command.
  364.  
  365. Entering QRD on the command line without any parameters will produce the 
  366. following information:
  367.  
  368.  
  369. QRD-QuickPi binary reader v4.5, (c) 2000-2008 S. Pagliarulo
  370. Freely distributable, email: s_pagliarulo@hotmail.com
  371.  
  372. usage: qrd sourcefile [destfile] [options|-h]
  373.  
  374.  
  375. Information in square brackets [] is optional.  Items separated by a vertical 
  376. bar | indicate an either-or choice.  For example, to view the compressed 
  377. binary file "pi.bin" created by QuickPi, enter:
  378.  
  379.   qrd pi.bin
  380.  
  381. The output will be sent to the console screen.  To save the output to a text 
  382. file, simply specify a destination file name after the source file name:
  383.  
  384.   qrd pi.bin pi.txt
  385.  
  386. This will save the output to the file "pi.txt".
  387.  
  388. Entering QRD on the command line with the -h option will produce the following 
  389. help information:
  390.  
  391. options:
  392.  
  393.  -stats            output computation statistics only
  394.  -nostats          output digit data only
  395.  
  396.  -range:start-end  output a range of digits
  397.                     start - start of range (1-)
  398.                     end - end of range (1-)
  399.  -skip:count,step  skip over output
  400.                     count - output [count] digits
  401.                     step - every [step] digits
  402.  
  403.  -fancy:dpc,dpr,   customize output format
  404.         dpb,bs,dc,  dpc - digits per column
  405.         fl          dpr - digits per row
  406.                     dpb - digits per block
  407.                     bs  - block spacing
  408.                     dc  - digit counting (none,row,block,line)
  409.                     fl  - flags (noindent,indent)
  410.  
  411.  -inverse          compute multiplicative inverse
  412.  -square           compute square
  413.  -cube             compute cube
  414.  -ln               compute natural log
  415.  
  416.  -binary           create binary output file
  417.  -license          display software license information
  418.  -pause            pause when finished
  419.  
  420.  
  421. Most options can be abbreviated to their first letter.  Where duplicates 
  422. exist, using two letters will generally differentiate the options.
  423.  
  424. OPTION DESCRIPTIONS
  425.  
  426. -stats
  427. This option causes the QuickPi Reader to output computation statistics only 
  428. and suppress the output of digit data.  This option can be used to obtain a 
  429. summary of a compressed binary file's contents.
  430.  
  431. -nostats
  432. This option causes the QuickPi Reader to suppress the output of computation 
  433. statistics that normally precede the digit data.  This option should be used 
  434. when only digit data is desired.
  435.  
  436. -range:
  437. This option causes the QuickPi Reader to limit the range of digits output.  A 
  438. starting point, an ending point, or both starting and ending points can be 
  439. entered, separated by a dash.  Multiple ranges can be specified by separating 
  440. them with a comma or by entering multiple -range options from the command 
  441. line.  For example, the following parameters will output the first and last 
  442. 100 digits of 20k computed digits:
  443.  
  444.   -range:1-100,20381-20480
  445.  
  446. -skip:
  447. This option causes the QuickPi Reader to skip across the full range of 
  448. computed digits and to only occasionally output a specified number of them.  
  449. The first parameter specifies the number of digits to output.  The second 
  450. parameter specifies the skip amount.  For example, the following parameters:
  451.  
  452.   -skip:100,10000
  453.  
  454. cause the QuickPi Reader to produce the following output with 20k computed 
  455. digits of Pi:
  456.  
  457.  
  458. Listing Pi, 100 digits every 10,000 digits
  459.  
  460. 3.
  461. 1415926535 8979323846 2643383279 5028841971 6939937510  : 50
  462. 5820974944 5923078164 0628620899 8628034825 3421170679  : 100
  463.  
  464. 5667227966 1988578279 4848855834 3975187445 4551296563  : 10050
  465. 4434803966 4205579829 3680435220 2770984294 2325330225  : 10100
  466.  
  467. 2038565390 9910477594 1413215432 8440625030 1802757169  : 20050
  468. 6508209642 7348414695 7263978842 5600845312 1406593580  : 20100
  469.  
  470.  
  471. -fancy:
  472. This option allows the formatted output of the QuickPi Reader to be 
  473. customized.  The default format is saved as part of the compressed binary file 
  474. created by QuickPi.  Unless changed when using QuickPi, the default format is 
  475. 10 digits per column, 50 digits per row and 500 digits per block.  Blocks are 
  476. separated by 1 blank line, digits are counted after each row and lines are not 
  477. indented.  Specifying each (in order) as follows can change these parameters:
  478.  
  479.   -fancy:dpc,dpr,dpb,bs,dc,fl
  480.  
  481. For example, the following parameters cause QuickPi Reader to output 5 digits 
  482. per column, 50 digits per row and 1000 digits per block with lines indented.  
  483. Note that any missing parameters remain unchanged.
  484.  
  485.   -fancy:5,50,1000,,,indent
  486.  
  487. There are two other valid parameters for this option.  They are -fancy:default 
  488. and -fancy:raw.  The first causes the QuickPi Reader to revert to its original 
  489. default parameters and the second causes the QuickPi Reader to produce 
  490. unformatted output.  Unformatted output is simply a stream of digits without 
  491. spaces or line termination.
  492.  
  493. -inverse
  494. This option causes the QuickPi Reader to compute and output the multiplicative 
  495. inverse or reciprocal of a result.
  496.  
  497. -square
  498. This option causes the QuickPi Reader to compute and output the square of a 
  499. result.
  500.  
  501. -cube
  502. This option causes the QuickPi Reader to compute and output the cube of a 
  503. result.
  504.  
  505. -ln
  506. This option caused the QuickPi Reader to compute and output the natural 
  507. logarithm of a result.
  508.  
  509. -binary
  510. This option causes the QuickPi Reader to write its output as a compressed 
  511. binary file.  This option is useful when combined with the -inverse, -square, 
  512. -cube or -ln options.
  513.  
  514. -license
  515. This option displays the QuickPi Reader license information.
  516.  
  517. -pause
  518. This option causes the QuickPi Reader to pause and wait for a key to be 
  519. pressed when its operation is complete.  The QuickPi Reader will automatically 
  520. pause if started from the Windows Desktop.
  521.  
  522.  
  523. -------------------
  524. PROGRAM LIMITATIONS
  525.  
  526. The upper limit for the 32-bit version of QuickPi is 1 billion digits.  The 
  527. 64-bit version has been successfully tested with over 100 billion digits and 
  528. has a theoretical upper limit of 500 billion digits.  The exact upper limit 
  529. depends on several factors including but not limited to the amount of memory 
  530. and disk space available.  Each new release of QuickPi should continue to 
  531. perform faster and with higher precision.
  532.  
  533. WARRANTIES AND DISCLAMERS
  534.  
  535. THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY 
  536. EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
  537. WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, FUNCTIONALITY 
  538. AND DATA INTEGRITY OR PROTECTION ARE DISCLAIMED.
  539.  
  540. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
  541. INDIRECT, INCIDENTAL, CONSEQUENTIAL, SPECIAL OR PUNITIVE DAMAGES WHICH MAY 
  542. RESULT FROM THE USE OF THIS SOFTWARE, INCLUDING LOSS OR INTERRUPTION OF 
  543. BUSINESS, ACCIDENTAL LOSS OF DATA OR DAMAGE TO COMPUTER EQUIPMENT.
  544.  
  545. ACKNOWLEDGEMENTS
  546.  
  547. My thanks and appreciation to all the Beta testers who have assisted with the 
  548. testing of this version over the past many months.  A special thanks to 
  549. Shigeru Kondo for his extra dedication, enthusiasm, helpful feedback and 
  550. suggestions.
  551.  
  552. CONTACTING THE AUTHOR
  553.  
  554. Questions and comments concerning QuickPi should be directed to Steve 
  555. Pagliarulo.  Steve can be contacted via email at: s_pagliarulo@hotmail.com
  556.  
  557. WEBSITES DEDICATED TO PI
  558.  
  559. Stu's pi page: http://home.istar.ca/~lyster/pi.html
  560. Xavier Gourdon: http://numbers.computation.free.fr/Constants/constants.html
  561. jasonp's home page: http://www.boo.net/~jasonp/
  562. Shigeru's pi world: http://ja0hxv.calico.jp/pai/estart.html
  563.  
  564.  
  565. -------------------
  566. (1) R.P. Brent, Fast multiple-precision evaluation of elementary functions, J. 
  567. ACM 23 (1976), 242-251.
  568.  
  569. (2) Arnold Schonhage, A.F.W. Grotefeld/E. Vetter, Fast Algorithms, A Multitape 
  570. Turing Machine Implementation, BI Wissenschaftsverlag, Mannheim (1994), p.266.
  571.  
  572. (3) Takuya Ooura maintains a website dedicated to Pi and the AGM at: 
  573. http://www.kurims.kyoto-u.ac.jp/~ooura/pi_fft.html
  574.  
  575. (4) The Kanada Laboratory maintains a website dedicated to computing Pi at:
  576. http://www.super-computing.org
  577.  
  578.